<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //迭代器模式
        //1. for in 和 for of 迭代
        /*
        for in 可以遍历一个对象的 除了[Symbol]以外 的 可枚举属性，包括继承的 属性
        拿到的key是索引
        1.遍历的是索引
        2.继承而来的也可以遍历

        for of 
        1.遍历的是值
        2.继承而来的不能遍历
        3.不可遍历对象
        */

        //迭代器是一种设计模式，它提供了一种统一的方式访问集合中的元素，而不需要了解集合的内部结构。
        let arr = [122, 2, 3]
        let obj = { name: '张三', age: 18 }
        Object.prototype.FUN = function () {
            console.log('FUN')
        }
        Array.prototype.FUN2 = function () {
            console.log('FUN')
        }

        for (let key in obj) {
            console.log(key)
        }


    </script>
</body>

</html>